﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Loja.Controles.Aplicação;
using Loja.Padrao;


namespace Loja.Telas
{
    public partial class ConsultaTipoCadastro : PadraoConsulta
    {
        private Controle controle;        

        public ConsultaTipoCadastro(Controle controle)
        {
            this.controle = controle;
            InitializeComponent();
        }

        private void btnNovo_Click_1(object sender, EventArgs e)
        {
            FormTipoCadastro c = new FormTipoCadastro(controle, 0);
            c.ShowDialog(this);
            Pesquisar();
        }

        private void btnPesquisar_Click(object sender, EventArgs e)
        {
            Pesquisar();
        }

        private void btnAbrir_Click(object sender, EventArgs e)
        {
            Abrir();
        }

        private void btnExcluir_Click(object sender, EventArgs e)
        {
            DialogResult dialogo = new DialogResult();
            dialogo = MessageBox.Show("Deseja EXCLUIR o Tipo Cadastro?", "Excluir Tipo Cadastro", MessageBoxButtons.YesNo);
            if (dialogo.ToString() == "Yes")
            {
                if (controle.DesativarTipoCadastro(dgDados.CurrentRow.Cells[0].Value.ToString()))
                {
                    MessageBox.Show("Registro excluído com sucesso!");
                    Pesquisar();
                }
                else
                {
                    MessageBox.Show("Erro ao excluir registro!");
                }
            }
        }

        public void Pesquisar()
        {
            if (txtDescricao.Text != "")
            {
                var tipocadastro = controle.BuscaTipoCadastro(txtDescricao.Text);

                if (tipocadastro == null)
                {

                    dgDados.DataSource = null;

                }
                else
                {
                    dgDados.DataSource = tipocadastro;
                }
            }
            else
            {
                var tipocadastro = controle.BuscaTipoCadastroAtivos();
                dgDados.DataSource = tipocadastro;
            }
            dgDados.Columns[2].Visible = false;
            dgDados.Columns[3].Visible = false;
            dgDados.Columns[0].HeaderText = "Codigo";
        }

        public void Abrir()
        {
            try
            {
                FormTipoCadastro c = new FormTipoCadastro(controle, Int32.Parse(dgDados.CurrentRow.Cells[0].Value.ToString()));
                c.ShowDialog(this);
                Pesquisar();
            }
            catch
            {
                MessageBox.Show("Não foi encontrado tipo cadastro(s) para essa consulta!");
            }
        }
    }
}
